#ifndef THREADPOOL_H
#define THREADPOOL_H
#include <header.h>
#include "Queue.h"
#include "zemaphore.h"

typedef struct pool_s{
    // 用来保存线程id
    pthread_t putFileThreadt;
	pthread_t getFileThreadt;

    // 信号量
    zem_t putfile;
	zem_t getfile;

    // 0运行，1退出
	// TODO 需要实现有序退出
    int exitFlag;

}pool_t;

/* 初始化信息，创建线程池 */
int initPool(pool_t *pool);
int destoryPool(pool_t *pool);

/* 子线程入口函数 */
void *putFileThread(void* arg);
void *getFileThread(void* arg);

#endif // !THREADPOOL_H


